gskpango: Don't copy fg color
authorTimm Bäder <mail@baedert.org>
Mon, 21 Dec 2020 14:23:25 +0000 (15:23 +0100)
committerTimm Bäder <mail@baedert.org>
Mon, 21 Dec 2020 14:23:25 +0000 (15:23 +0100)
No need to do that here, we copy it in to the individual render nodes
anyway.

gtk/gskpango.c
gtk/gskpango.h
gtk/gtktextlayout.c

index 6803f7528a873672e6d6ffe0ed572176f528da1e..cfe868cb7a2f7717dbe1603bc6f859219ffb70bd 100644 (file)
@@ -66,11 +66,11 @@ get_color (GskPangoRenderer *crenderer,
       rgba->red = color->red / 65535.;
       rgba->green = color->green / 65535.;
       rgba->blue = color->blue / 65535.;
-      rgba->alpha = a ? a  / 65535. : crenderer->fg_color.alpha;
+      rgba->alpha = a ? a  / 65535. : crenderer->fg_color->alpha;
     }
   else
     {
-      *rgba = crenderer->fg_color;
+      *rgba = *crenderer->fg_color;
       if (a)
         rgba->alpha = a / 65535.;
     }
@@ -502,7 +502,7 @@ gtk_snapshot_append_layout (GtkSnapshot   *snapshot,
   crenderer = gsk_pango_renderer_acquire ();
 
   crenderer->snapshot = snapshot;
-  crenderer->fg_color = *color;
+  crenderer->fg_color = color;
 
   pango_renderer_draw_layout (PANGO_RENDERER (crenderer), layout, 0, 0);
 
index 37052a1c0e202bc4c0408d0193235d3b8f8edffe..672128d1c134a1d06fd5200a86f0fd9275fdc783 100644 (file)
@@ -58,7 +58,7 @@ struct _GskPangoRenderer
 
   GtkWidget             *widget;
   GtkSnapshot           *snapshot;
-  GdkRGBA                fg_color;
+  const GdkRGBA         *fg_color;
 
   /* Error underline color for this widget */
   GdkRGBA               *error_color;
index ecbd2d3a08c3af452c63231470ba60de58b09152..9c994137aeab480a8f1ed573ae6ef7f28a43e2af 100644 (file)
@@ -4164,7 +4164,7 @@ gtk_text_layout_snapshot (GtkTextLayout      *layout,
 
   crenderer->widget = widget;
   crenderer->snapshot = snapshot;
-  crenderer->fg_color = color;
+  crenderer->fg_color = &color;
 
   gtk_text_layout_wrap_loop_start (layout);